package model;

import init.DBManagement;

import java.util.ArrayList;
import java.util.Map;

import model.beans.SubtopicBean;

public class Subtopics {
	public static ArrayList list(int int_topicId, int int_unitNumber, String str_academy, String str_subject){
		ArrayList arrL_retVal = new ArrayList();
		SubtopicBean bn_subtopic;

		String str_list =
			" SELECT  STE_TECH_KEY,                                     " +
			"       NUMERO ,  " +
			"        DESCRIPCION,                 " +
			"        OBJETIVO," +
			"        OBJ_ALUMNO, "+
			"        TIPO, "+
			"        EXP_APRENDIZAJE, "+
			"        MATERIAL, "+
			"        NIV_CONOCIMIENTO, "+
			"        EJEC_ESPECIFICA, "+
			"        PRODUCTO, "+
			"        PROC_EVALUAR, "+
			"        EJEC_ACEPTABLE, "+
			"        TIEMPO_MIN, "+
			"        GRUPO,  "+
			"        NUMERO_CARTA, " +
			"        OBJ_ALUMNO2, "+
			"        TIPO2, "+
			"        EXP_APRENDIZAJE2, "+
			"        MATERIAL2, "+
			"        NIV_CONOCIMIENTO2, "+
			"        EJEC_ESPECIFICA2, "+
			"        PRODUCTO2, "+
			"        PROC_EVALUAR2, "+
			"        EJEC_ACEPTABLE2, "+
			"        TIEMPO_MIN2, "+
			"        GRUPO2,  "+
			"        NUMERO_CARTA2, " +
			"        OBJ_ALUMNO3, "+
			"        TIPO3, "+
			"        EXP_APRENDIZAJE3, "+
			"        MATERIAL3, "+
			"        NIV_CONOCIMIENTO3, "+
			"        EJEC_ESPECIFICA3, "+
			"        PRODUCTO3, "+
			"        PROC_EVALUAR3, "+
			"        EJEC_ACEPTABLE3, "+
			"        TIEMPO_MIN3, "+
			"        GRUPO3,  "+
			"        NUMERO_CARTA3, " +
			"        OBJ_ALUMNO4, "+
			"        TIPO4, "+
			"        EXP_APRENDIZAJE4, "+
			"        MATERIAL4, "+
			"        NIV_CONOCIMIENTO4, "+
			"        EJEC_ESPECIFICA4, "+
			"        PRODUCTO4, "+
			"        PROC_EVALUAR4, "+
			"        EJEC_ACEPTABLE4, "+
			"        TIEMPO_MIN4, "+
			"        GRUPO4,  "+
			"        NUMERO_CARTA4, " +
			"        OBJ_ALUMNO5, "+
			"        TIPO5, "+
			"        EXP_APRENDIZAJE5, "+
			"        MATERIAL5, "+
			"        NIV_CONOCIMIENTO5, "+
			"        EJEC_ESPECIFICA5, "+
			"        PRODUCTO5, "+
			"        PROC_EVALUAR5, "+
			"        EJEC_ACEPTABLE5, "+
			"        TIEMPO_MIN5, "+
			"        GRUPO5,  "+
			"        NUMERO_CARTA5 " +
			" FROM PLASTER                            " + 
			" WHERE  TEMA_TK = '"+int_topicId +"' " ;
		
		DBManagement database = new DBManagement();
		database.executeQuery( str_list );

		for( int int_i = 0; int_i < database.getNumRows(); int_i++ ){
			bn_subtopic = new SubtopicBean();
			bn_subtopic.setInt_subtopicId(Integer.parseInt( database.getItem(int_i, 0) ));
			bn_subtopic.setInt_subtopicNumber(Integer.parseInt( database.getItem(int_i, 1) ));
			bn_subtopic.setStr_descripcion(database.getItem(int_i, 2));
			bn_subtopic.setStr_objetivos((database.getItem(int_i, 3)));
			
			bn_subtopic.setObjetivoAlumno(database.getItem(int_i, 4));
			bn_subtopic.setTipo(database.getItem(int_i, 5));
			bn_subtopic.setExperienciaAprendizaje(database.getItem(int_i, 6));
			bn_subtopic.setMaterial(database.getItem(int_i, 7));
			bn_subtopic.setNivelConocimiento(database.getItem(int_i, 8));
			bn_subtopic.setEjecucionEspecifica(database.getItem(int_i, 9));
			bn_subtopic.setProducto(database.getItem(int_i, 10));
			bn_subtopic.setProcedimientoEvaluar(database.getItem(int_i, 11));
			bn_subtopic.setEjecucionAceptable(database.getItem(int_i, 12));
			bn_subtopic.setTiempoMinimo( database.getItem(int_i, 13) !=null ? new Integer( database.getItem(int_i, 13) ).intValue() : 0 );
			bn_subtopic.setGrupo(database.getItem(int_i, 14) !=null ? new Integer( database.getItem(int_i, 14) ).intValue() : 0 );
			bn_subtopic.setNumeroCarta(database.getItem(int_i, 15));
			
			bn_subtopic.setObjetivoAlumno2(database.getItem(int_i, 16));
			bn_subtopic.setTipo2(database.getItem(int_i, 17));
			bn_subtopic.setExperienciaAprendizaje2(database.getItem(int_i, 18));
			bn_subtopic.setMaterial2(database.getItem(int_i, 19));
			bn_subtopic.setNivelConocimiento2(database.getItem(int_i, 20));
			bn_subtopic.setEjecucionEspecifica2(database.getItem(int_i, 21));
			bn_subtopic.setProducto2(database.getItem(int_i, 22));
			bn_subtopic.setProcedimientoEvaluar2(database.getItem(int_i, 23));
			bn_subtopic.setEjecucionAceptable2(database.getItem(int_i, 24));
			bn_subtopic.setTiempoMinimo2( database.getItem(int_i, 25) !=null ? new Integer( database.getItem(int_i, 25) ).intValue() : 0 );
			bn_subtopic.setGrupo2(database.getItem(int_i, 26) !=null ? new Integer( database.getItem(int_i, 26) ).intValue() : 0 );
			bn_subtopic.setNumeroCarta2(database.getItem(int_i, 27));
			
			bn_subtopic.setObjetivoAlumno3(database.getItem(int_i,28));
			bn_subtopic.setTipo3(database.getItem(int_i, 29));
			bn_subtopic.setExperienciaAprendizaje3(database.getItem(int_i, 30));
			bn_subtopic.setMaterial3(database.getItem(int_i, 31));
			bn_subtopic.setNivelConocimiento3(database.getItem(int_i, 32));
			bn_subtopic.setEjecucionEspecifica3(database.getItem(int_i, 33));
			bn_subtopic.setProducto3(database.getItem(int_i, 34));
			bn_subtopic.setProcedimientoEvaluar3(database.getItem(int_i, 35));
			bn_subtopic.setEjecucionAceptable3(database.getItem(int_i, 36));
			bn_subtopic.setTiempoMinimo3( database.getItem(int_i, 37) !=null ? new Integer( database.getItem(int_i, 37) ).intValue() : 0 );
			bn_subtopic.setGrupo3(database.getItem(int_i, 38) !=null ? new Integer( database.getItem(int_i, 38) ).intValue() : 0 );
			bn_subtopic.setNumeroCarta3(database.getItem(int_i, 39));
			
			bn_subtopic.setObjetivoAlumno4(database.getItem(int_i, 40));
			bn_subtopic.setTipo4(database.getItem(int_i, 41));
			bn_subtopic.setExperienciaAprendizaje4(database.getItem(int_i, 42));
			bn_subtopic.setMaterial4(database.getItem(int_i, 43));
			bn_subtopic.setNivelConocimiento4(database.getItem(int_i, 44));
			bn_subtopic.setEjecucionEspecifica4(database.getItem(int_i, 45));
			bn_subtopic.setProducto4(database.getItem(int_i, 46));
			bn_subtopic.setProcedimientoEvaluar4(database.getItem(int_i, 47));
			bn_subtopic.setEjecucionAceptable4(database.getItem(int_i, 48));
			bn_subtopic.setTiempoMinimo4( database.getItem(int_i, 49) !=null ? new Integer( database.getItem(int_i, 49) ).intValue() : 0 );
			bn_subtopic.setGrupo4(database.getItem(int_i, 50) !=null ? new Integer( database.getItem(int_i, 50) ).intValue() : 0 );
			bn_subtopic.setNumeroCarta4(database.getItem(int_i, 51));
			
			bn_subtopic.setObjetivoAlumno5(database.getItem(int_i, 52));
			bn_subtopic.setTipo5(database.getItem(int_i, 53));
			bn_subtopic.setExperienciaAprendizaje5(database.getItem(int_i, 54));
			bn_subtopic.setMaterial5(database.getItem(int_i, 55));
			bn_subtopic.setNivelConocimiento5(database.getItem(int_i, 56));
			bn_subtopic.setEjecucionEspecifica5(database.getItem(int_i, 57));
			bn_subtopic.setProducto5(database.getItem(int_i, 58));
			bn_subtopic.setProcedimientoEvaluar5(database.getItem(int_i, 59));
			bn_subtopic.setEjecucionAceptable5(database.getItem(int_i, 60));
			bn_subtopic.setTiempoMinimo5( database.getItem(int_i, 61) !=null ? new Integer( database.getItem(int_i, 61) ).intValue() : 0 );
			bn_subtopic.setGrupo5(database.getItem(int_i, 62) !=null ? new Integer( database.getItem(int_i, 62) ).intValue() : 0 );
			bn_subtopic.setNumeroCarta5(database.getItem(int_i, 63));
			
			bn_subtopic.setInt_unitNumber(int_unitNumber);
			bn_subtopic.setAcademy(str_academy);
			bn_subtopic.setSubject(str_subject);
			bn_subtopic.setInt_unitNumber(int_unitNumber);
			bn_subtopic.setInt_topicId(int_topicId);
			
			arrL_retVal.add(bn_subtopic);
		}
		database = null;
		return arrL_retVal;
	}
	
	public static SubtopicBean instance( int int_subtopicId ){
		SubtopicBean subtema_retVal = null;
		String str_list = 
			" SELECT  STE_TECH_KEY,                                     " +
			"       NUMERO ,  " +
			"        DESCRIPCION,                 " +
			"        TEMA_TK,                          " +
			"        OBJETIVO,                          " +
			"        OBJ_ALUMNO, "+
			"        TIPO, "+
			"        EXP_APRENDIZAJE, "+
			"        MATERIAL, "+
			"        NIV_CONOCIMIENTO, "+
			"        EJEC_ESPECIFICA, "+
			"        PRODUCTO, "+
			"        PROC_EVALUAR, "+
			"        EJEC_ACEPTABLE, "+
			"        TIEMPO_MIN, "+
			"        GRUPO, "+
			"        NUMERO_CARTA, " +
			"        OBJ_ALUMNO2, "+
			"        TIPO2, "+
			"        EXP_APRENDIZAJE2, "+
			"        MATERIAL2, "+
			"        NIV_CONOCIMIENTO2, "+
			"        EJEC_ESPECIFICA2, "+
			"        PRODUCTO2, "+
			"        PROC_EVALUAR2, "+
			"        EJEC_ACEPTABLE2, "+
			"        TIEMPO_MIN2, "+
			"        GRUPO2,  "+
			"        NUMERO_CARTA2, " +
			"        OBJ_ALUMNO3, "+
			"        TIPO3, "+
			"        EXP_APRENDIZAJE3, "+
			"        MATERIAL3, "+
			"        NIV_CONOCIMIENTO3, "+
			"        EJEC_ESPECIFICA3, "+
			"        PRODUCTO3, "+
			"        PROC_EVALUAR3, "+
			"        EJEC_ACEPTABLE3, "+
			"        TIEMPO_MIN3, "+
			"        GRUPO3,  "+
			"        NUMERO_CARTA3, " +
			"        OBJ_ALUMNO4, "+
			"        TIPO4, "+
			"        EXP_APRENDIZAJE4, "+
			"        MATERIAL4, "+
			"        NIV_CONOCIMIENTO4, "+
			"        EJEC_ESPECIFICA4, "+
			"        PRODUCTO4, "+
			"        PROC_EVALUAR4, "+
			"        EJEC_ACEPTABLE4, "+
			"        TIEMPO_MIN4, "+
			"        GRUPO4,  "+
			"        NUMERO_CARTA4, " +
			"        OBJ_ALUMNO5, "+
			"        TIPO5, "+
			"        EXP_APRENDIZAJE5, "+
			"        MATERIAL5, "+
			"        NIV_CONOCIMIENTO5, "+
			"        EJEC_ESPECIFICA5, "+
			"        PRODUCTO5, "+
			"        PROC_EVALUAR5, "+
			"        EJEC_ACEPTABLE5, "+
			"        TIEMPO_MIN5, "+
			"        GRUPO5,  "+
			"        NUMERO_CARTA5 " +
			" FROM PLASTER                            " + 
			" WHERE  STE_TECH_KEY = "+int_subtopicId ;
		DBManagement database = new DBManagement();
	    database.executeQuery( str_list );
	  
	    if( database.getNumRows() == 1 ){
	    	subtema_retVal = new SubtopicBean();
	    	subtema_retVal.setInt_subtopicId(Integer.parseInt(database.getItem(0, 0)));
	    	subtema_retVal.setInt_subtopicNumber(Integer.parseInt(database.getItem(0, 1)));
	    	subtema_retVal.setStr_descripcion(database.getItem(0, 2));
	    	subtema_retVal.setInt_topicId((Integer.parseInt(database.getItem(0, 3))));	    	
	    	subtema_retVal.setStr_objetivos(database.getItem(0, 4));
	    	subtema_retVal.setObjetivoAlumno(database.getItem(0, 5));
			subtema_retVal.setTipo(database.getItem(0, 6));
			subtema_retVal.setExperienciaAprendizaje(database.getItem(0, 7));
			subtema_retVal.setMaterial(database.getItem(0, 8));
			subtema_retVal.setNivelConocimiento(database.getItem(0, 9));
			subtema_retVal.setEjecucionEspecifica(database.getItem(0, 10));
			subtema_retVal.setProducto(database.getItem(0, 11));
			subtema_retVal.setProcedimientoEvaluar(database.getItem(0, 12));
			subtema_retVal.setEjecucionAceptable(database.getItem(0, 13));
			subtema_retVal.setTiempoMinimo( database.getItem(0, 14) !=null ? new Integer( database.getItem(0, 14) ).intValue() : 0 );
			subtema_retVal.setGrupo(database.getItem(0, 15) !=null ? new Integer( database.getItem(0, 15) ).intValue() : 0 );
			subtema_retVal.setNumeroCarta(database.getItem(0, 16));
			
			subtema_retVal.setObjetivoAlumno2(database.getItem(0, 17));
			subtema_retVal.setTipo2(database.getItem(0, 18));
			subtema_retVal.setExperienciaAprendizaje2(database.getItem(0, 19));
			subtema_retVal.setMaterial2(database.getItem(0, 20));
			subtema_retVal.setNivelConocimiento2(database.getItem(0, 21));
			subtema_retVal.setEjecucionEspecifica2(database.getItem(0, 22));
			subtema_retVal.setProducto2(database.getItem(0, 23));
			subtema_retVal.setProcedimientoEvaluar2(database.getItem(0, 24));
			subtema_retVal.setEjecucionAceptable2(database.getItem(0, 25));
			subtema_retVal.setTiempoMinimo2( database.getItem(0, 26) !=null ? new Integer( database.getItem(0, 26) ).intValue() : 0 );
			subtema_retVal.setGrupo2(database.getItem(0, 27) !=null ? new Integer( database.getItem(0, 27) ).intValue() : 0 );
			subtema_retVal.setNumeroCarta2(database.getItem(0, 28));
			
			subtema_retVal.setObjetivoAlumno3(database.getItem(0,29));
			subtema_retVal.setTipo3(database.getItem(0, 30));
			subtema_retVal.setExperienciaAprendizaje3(database.getItem(0, 31));
			subtema_retVal.setMaterial3(database.getItem(0, 32));
			subtema_retVal.setNivelConocimiento3(database.getItem(0, 33));
			subtema_retVal.setEjecucionEspecifica3(database.getItem(0, 34));
			subtema_retVal.setProducto3(database.getItem(0, 35));
			subtema_retVal.setProcedimientoEvaluar3(database.getItem(0, 36));
			subtema_retVal.setEjecucionAceptable3(database.getItem(0, 37));
			subtema_retVal.setTiempoMinimo3( database.getItem(0, 38) !=null ? new Integer( database.getItem(0, 38) ).intValue() : 0 );
			subtema_retVal.setGrupo3(database.getItem(0, 39) !=null ? new Integer( database.getItem(0, 39) ).intValue() : 0 );
			subtema_retVal.setNumeroCarta3(database.getItem(0, 40));
			
			subtema_retVal.setObjetivoAlumno4(database.getItem(0, 41));
			subtema_retVal.setTipo4(database.getItem(0, 42));
			subtema_retVal.setExperienciaAprendizaje4(database.getItem(0, 43));
			subtema_retVal.setMaterial4(database.getItem(0, 44));
			subtema_retVal.setNivelConocimiento4(database.getItem(0, 45));
			subtema_retVal.setEjecucionEspecifica4(database.getItem(0, 46));
			subtema_retVal.setProducto4(database.getItem(0, 47));
			subtema_retVal.setProcedimientoEvaluar4(database.getItem(0, 48));
			subtema_retVal.setEjecucionAceptable4(database.getItem(0, 49));
			subtema_retVal.setTiempoMinimo4( database.getItem(0, 50) !=null ? new Integer( database.getItem(0, 50) ).intValue() : 0 );
			subtema_retVal.setGrupo4(database.getItem(0, 51) !=null ? new Integer( database.getItem(0, 51) ).intValue() : 0 );
			subtema_retVal.setNumeroCarta4(database.getItem(0, 52));
			
			subtema_retVal.setObjetivoAlumno5(database.getItem(0, 53));
			subtema_retVal.setTipo5(database.getItem(0, 54));
			subtema_retVal.setExperienciaAprendizaje5(database.getItem(0, 55));
			subtema_retVal.setMaterial5(database.getItem(0, 56));
			subtema_retVal.setNivelConocimiento5(database.getItem(0, 57));
			subtema_retVal.setEjecucionEspecifica5(database.getItem(0, 58));
			subtema_retVal.setProducto5(database.getItem(0, 59));
			subtema_retVal.setProcedimientoEvaluar5(database.getItem(0, 60));
			subtema_retVal.setEjecucionAceptable5(database.getItem(0, 61));
			subtema_retVal.setTiempoMinimo5( database.getItem(0, 62) !=null ? new Integer( database.getItem(0, 62) ).intValue() : 0 );
			subtema_retVal.setGrupo5(database.getItem(0, 63) !=null ? new Integer( database.getItem(0, 63) ).intValue() : 0 );
			subtema_retVal.setNumeroCarta5(database.getItem(0, 64));
	    }
	    database = null;
		return subtema_retVal;
	}
	
	public static int add( Map map_data, int int_topicId){
		int int_add;
		Integer int_subtopicNumber = (Integer)map_data.get("int_subtopicNumber");
		String str_descripcion = (String)map_data.get("str_descripcion");
		String str_objetivos = (String)map_data.get("str_objetivos");
		String str_objetivosAlumno = (String)map_data.get("objetivoAlumno");
		String str_tipo = (String)map_data.get("tipo");
		if( str_tipo == null )str_tipo = "";
		String str_experienciaAprendizaje = (String)map_data.get("experienciaAprendizaje");
		String str_material = (String)map_data.get("material");
		String str_nivelConocimiento = (String)map_data.get("nivelConocimiento");
		String str_ejecucionEspecifica = (String)map_data.get("ejecucionEspecifica");
		String str_producto = (String)map_data.get("producto");
		String str_procedimientosEvaluar = (String)map_data.get("procedimientoEvaluar");
		String str_ejecucionAceptable = (String)map_data.get("ejecucionAceptable");
		String str_tiempoMinimo = ((Integer)map_data.get("tiempoMinimo")).toString();
		String str_grupo = ((Integer)map_data.get("grupo")).toString();
		String str_numeroCarta = (String)map_data.get("numeroCarta");
		
		String str_objetivosAlumno2 = (String)map_data.get("objetivoAlumno2");
		String str_tipo2 = (String)map_data.get("tipo2");
		if( str_tipo2 == null )str_tipo2 = "";
		String str_experienciaAprendizaje2 = (String)map_data.get("experienciaAprendizaje2");
		String str_material2 = (String)map_data.get("material2");
		String str_nivelConocimiento2 = (String)map_data.get("nivelConocimiento2");
		String str_ejecucionEspecifica2 = (String)map_data.get("ejecucionEspecifica2");
		String str_producto2 = (String)map_data.get("producto2");
		String str_procedimientosEvaluar2 = (String)map_data.get("procedimientoEvaluar2");
		String str_ejecucionAceptable2 = (String)map_data.get("ejecucionAceptable2");
		String str_tiempoMinimo2 = ((Integer)map_data.get("tiempoMinimo2")).toString();
		String str_grupo2 = ((Integer)map_data.get("grupo2")).toString();
		String str_numeroCarta2 = (String)map_data.get("numeroCarta2");
		
		String str_objetivosAlumno3 = (String)map_data.get("objetivoAlumno3");
		String str_tipo3 = (String)map_data.get("tipo3");
		if( str_tipo3 == null )str_tipo3 = "";
		String str_experienciaAprendizaje3 = (String)map_data.get("experienciaAprendizaje3");
		String str_material3 = (String)map_data.get("material3");
		String str_nivelConocimiento3 = (String)map_data.get("nivelConocimiento3");
		String str_ejecucionEspecifica3 = (String)map_data.get("ejecucionEspecifica3");
		String str_producto3 = (String)map_data.get("producto3");
		String str_procedimientosEvaluar3 = (String)map_data.get("procedimientoEvaluar3");
		String str_ejecucionAceptable3 = (String)map_data.get("ejecucionAceptable3");
		String str_tiempoMinimo3 = ((Integer)map_data.get("tiempoMinimo3")).toString();
		String str_grupo3 = ((Integer)map_data.get("grupo3")).toString();
		String str_numeroCarta3 = (String)map_data.get("numeroCarta3");
		
		String str_objetivosAlumno4 = (String)map_data.get("objetivoAlumno4");
		String str_tipo4 = (String)map_data.get("tipo4");
		if( str_tipo4 == null )str_tipo4 = "";
		String str_experienciaAprendizaje4 = (String)map_data.get("experienciaAprendizaje4");
		String str_material4 = (String)map_data.get("material4");
		String str_nivelConocimiento4 = (String)map_data.get("nivelConocimiento4");
		String str_ejecucionEspecifica4 = (String)map_data.get("ejecucionEspecifica4");
		String str_producto4 = (String)map_data.get("producto4");
		String str_procedimientosEvaluar4 = (String)map_data.get("procedimientoEvaluar4");
		String str_ejecucionAceptable4 = (String)map_data.get("ejecucionAceptable4");
		String str_tiempoMinimo4 = ((Integer)map_data.get("tiempoMinimo4")).toString();
		String str_grupo4 = ((Integer)map_data.get("grupo4")).toString();
		String str_numeroCarta4 = (String)map_data.get("numeroCarta4");
		
		String str_objetivosAlumno5 = (String)map_data.get("objetivoAlumno5");
		String str_tipo5 = (String)map_data.get("tipo5");
		if( str_tipo5 == null )str_tipo5 = "";
		String str_experienciaAprendizaje5 = (String)map_data.get("experienciaAprendizaje5");
		String str_material5 = (String)map_data.get("material5");
		String str_nivelConocimiento5 = (String)map_data.get("nivelConocimiento5");
		String str_ejecucionEspecifica5 = (String)map_data.get("ejecucionEspecifica5");
		String str_producto5 = (String)map_data.get("producto5");
		String str_procedimientosEvaluar5 = (String)map_data.get("procedimientoEvaluar5");
		String str_ejecucionAceptable5 = (String)map_data.get("ejecucionAceptable5");
		String str_tiempoMinimo5 = ((Integer)map_data.get("tiempoMinimo5")).toString();
		String str_grupo5 = ((Integer)map_data.get("grupo5")).toString();
		String str_numeroCarta5 = (String)map_data.get("numeroCarta5");
		
		String str_add =
            " INSERT INTO PLASTER ( "+
            "        NUMERO, "+
            "        DESCRIPCION, "+
            "        TEMA_TK, "+
            "        OBJETIVO, "+
            "        OBJ_ALUMNO, "+
			"        TIPO, "+
			"        EXP_APRENDIZAJE, "+
			"        MATERIAL, "+
			"        NIV_CONOCIMIENTO, "+
			"        EJEC_ESPECIFICA, "+
			"        PRODUCTO, "+
			"        PROC_EVALUAR, "+
			"        EJEC_ACEPTABLE, "+
			"        TIEMPO_MIN, "+
			"        GRUPO,  "+
			"        NUMERO_CARTA, " +
			"        OBJ_ALUMNO2, "+
			"        TIPO2, "+
			"        EXP_APRENDIZAJE2, "+
			"        MATERIAL2, "+
			"        NIV_CONOCIMIENTO2, "+
			"        EJEC_ESPECIFICA2, "+
			"        PRODUCTO2, "+
			"        PROC_EVALUAR2, "+
			"        EJEC_ACEPTABLE2, "+
			"        TIEMPO_MIN2, "+
			"        GRUPO2,  "+
			"        NUMERO_CARTA2, " +
			"        OBJ_ALUMNO3, "+
			"        TIPO3, "+
			"        EXP_APRENDIZAJE3, "+
			"        MATERIAL3, "+
			"        NIV_CONOCIMIENTO3, "+
			"        EJEC_ESPECIFICA3, "+
			"        PRODUCTO3, "+
			"        PROC_EVALUAR3, "+
			"        EJEC_ACEPTABLE3, "+
			"        TIEMPO_MIN3, "+
			"        GRUPO3,  "+
			"        NUMERO_CARTA3, " +
			"        OBJ_ALUMNO4, "+
			"        TIPO4, "+
			"        EXP_APRENDIZAJE4, "+
			"        MATERIAL4, "+
			"        NIV_CONOCIMIENTO4, "+
			"        EJEC_ESPECIFICA4, "+
			"        PRODUCTO4, "+
			"        PROC_EVALUAR4, "+
			"        EJEC_ACEPTABLE4, "+
			"        TIEMPO_MIN4, "+
			"        GRUPO4,  "+
			"        NUMERO_CARTA4, " +
			"        OBJ_ALUMNO5, "+
			"        TIPO5, "+
			"        EXP_APRENDIZAJE5, "+
			"        MATERIAL5, "+
			"        NIV_CONOCIMIENTO5, "+
			"        EJEC_ESPECIFICA5, "+
			"        PRODUCTO5, "+
			"        PROC_EVALUAR5, "+
			"        EJEC_ACEPTABLE5, "+
			"        TIEMPO_MIN5, "+
			"        GRUPO5,  "+
			"        NUMERO_CARTA5 " +
            " ) VALUES ( "+
                     int_subtopicNumber +", "+
            "'" + str_descripcion +"', "+
            	     int_topicId+", "+
            "'" + str_objetivos +"', " +
            "'" + str_objetivosAlumno +"', " +
            "'" + str_tipo +"', " +
            "'" + str_experienciaAprendizaje +"', " +
            "'" + str_material +"', " +
            "'" + str_nivelConocimiento +"', " +
            "'" + str_ejecucionEspecifica +"', " +
            "'" + str_producto +"', " +
            "'" + str_procedimientosEvaluar +"', " +
            "'" + str_ejecucionAceptable +"', " +
            "'" + str_tiempoMinimo +"', " +
            "'" + str_grupo +"', " +
            "'" + str_numeroCarta +"', " +
            "'" + str_objetivosAlumno2 +"', " +
            "'" + str_tipo2 +"', " +
            "'" + str_experienciaAprendizaje2 +"', " +
            "'" + str_material2 +"', " +
            "'" + str_nivelConocimiento2 +"', " +
            "'" + str_ejecucionEspecifica2 +"', " +
            "'" + str_producto2 +"', " +
            "'" + str_procedimientosEvaluar2 +"', " +
            "'" + str_ejecucionAceptable2 +"', " +
            "'" + str_tiempoMinimo2 +"', " +
            "'" + str_grupo2 +"', " +
            "'" + str_numeroCarta2 +"', " +
            "'" + str_objetivosAlumno3 +"', " +
            "'" + str_tipo3 +"', " +
            "'" + str_experienciaAprendizaje3 +"', " +
            "'" + str_material3 +"', " +
            "'" + str_nivelConocimiento3 +"', " +
            "'" + str_ejecucionEspecifica3 +"', " +
            "'" + str_producto3 +"', " +
            "'" + str_procedimientosEvaluar3 +"', " +
            "'" + str_ejecucionAceptable3 +"', " +
            "'" + str_tiempoMinimo3 +"', " +
            "'" + str_grupo3 +"', " +
            "'" + str_numeroCarta3 +"', " +
            "'" + str_objetivosAlumno4 +"', " +
            "'" + str_tipo4 +"', " +
            "'" + str_experienciaAprendizaje4 +"', " +
            "'" + str_material4 +"', " +
            "'" + str_nivelConocimiento4 +"', " +
            "'" + str_ejecucionEspecifica4 +"', " +
            "'" + str_producto4 +"', " +
            "'" + str_procedimientosEvaluar4 +"', " +
            "'" + str_ejecucionAceptable4 +"', " +
            "'" + str_tiempoMinimo4 +"', " +
            "'" + str_grupo4 +"', " +
            "'" + str_numeroCarta4 +"', " +
            "'" + str_objetivosAlumno5 +"', " +
            "'" + str_tipo5 +"', " +
            "'" + str_experienciaAprendizaje5 +"', " +
            "'" + str_material5 +"', " +
            "'" + str_nivelConocimiento5 +"', " +
            "'" + str_ejecucionEspecifica5 +"', " +
            "'" + str_producto5 +"', " +
            "'" + str_procedimientosEvaluar5 +"', " +
            "'" + str_ejecucionAceptable5 +"', " +
            "'" + str_tiempoMinimo5 +"', " +
            "'" + str_grupo5 +"', " +
            "'" + str_numeroCarta5 +"' " +
            " ) ";
		DBManagement database = new DBManagement();
        boolean bol_insertStatus = database.executeQuery( str_add );        
        int_add = bol_insertStatus ? 1 : 0;
        database = null;
	    return int_add;
	}
	
	public static int edit(Map map_data){
		int int_edit;
		Integer int_subtopicNumber = (Integer)map_data.get("int_subtopicNumber");
		String str_descripcion = (String)map_data.get("str_descripcion");
		Integer int_subtopicId = (Integer)map_data.get("int_subtopicId");
		String str_objetivos = (String)map_data.get("str_objetivos");
		String str_objetivosAlumno = (String)map_data.get("objetivoAlumno");
		String str_tipo = (String)map_data.get("tipo");
		if( str_tipo == null )str_tipo = "";
		String str_experienciaAprendizaje = (String)map_data.get("experienciaAprendizaje");
		String str_material = (String)map_data.get("material");
		String str_nivelConocimiento = (String)map_data.get("nivelConocimiento");
		String str_ejecucionEspecifica = (String)map_data.get("ejecucionEspecifica");
		String str_producto = (String)map_data.get("producto");
		String str_procedimientosEvaluar = (String)map_data.get("procedimientoEvaluar");
		String str_ejecucionAceptable = (String)map_data.get("ejecucionAceptable");
		String str_tiempoMinimo =( (Integer)map_data.get("tiempoMinimo") ).toString();
		String str_grupo = ((Integer)map_data.get("grupo")).toString();
		String str_numeroCarta = (String)map_data.get("numeroCarta");
		
		String str_objetivosAlumno2 = (String)map_data.get("objetivoAlumno2");
		String str_tipo2 = (String)map_data.get("tipo2");
		if( str_tipo2 == null )str_tipo2 = "";
		String str_experienciaAprendizaje2 = (String)map_data.get("experienciaAprendizaje2");
		String str_material2 = (String)map_data.get("material2");
		String str_nivelConocimiento2 = (String)map_data.get("nivelConocimiento2");
		String str_ejecucionEspecifica2 = (String)map_data.get("ejecucionEspecifica2");
		String str_producto2 = (String)map_data.get("producto2");
		String str_procedimientosEvaluar2 = (String)map_data.get("procedimientoEvaluar2");
		String str_ejecucionAceptable2 = (String)map_data.get("ejecucionAceptable2");
		String str_tiempoMinimo2 = ((Integer)map_data.get("tiempoMinimo2")).toString();
		String str_grupo2 = ((Integer)map_data.get("grupo2")).toString();
		String str_numeroCarta2 = (String)map_data.get("numeroCarta2");
		
		String str_objetivosAlumno3 = (String)map_data.get("objetivoAlumno3");
		String str_tipo3 = (String)map_data.get("tipo3");
		if( str_tipo3 == null )str_tipo3 = "";
		String str_experienciaAprendizaje3 = (String)map_data.get("experienciaAprendizaje3");
		String str_material3 = (String)map_data.get("material3");
		String str_nivelConocimiento3 = (String)map_data.get("nivelConocimiento3");
		String str_ejecucionEspecifica3 = (String)map_data.get("ejecucionEspecifica3");
		String str_producto3 = (String)map_data.get("producto3");
		String str_procedimientosEvaluar3 = (String)map_data.get("procedimientoEvaluar3");
		String str_ejecucionAceptable3 = (String)map_data.get("ejecucionAceptable3");
		String str_tiempoMinimo3 = ((Integer)map_data.get("tiempoMinimo3")).toString();
		String str_grupo3 = ((Integer)map_data.get("grupo3")).toString();
		String str_numeroCarta3 = (String)map_data.get("numeroCarta3");
		
		String str_objetivosAlumno4 = (String)map_data.get("objetivoAlumno4");
		String str_tipo4 = (String)map_data.get("tipo4");
		if( str_tipo4 == null )str_tipo4 = "";
		String str_experienciaAprendizaje4 = (String)map_data.get("experienciaAprendizaje4");
		String str_material4 = (String)map_data.get("material4");
		String str_nivelConocimiento4 = (String)map_data.get("nivelConocimiento4");
		String str_ejecucionEspecifica4 = (String)map_data.get("ejecucionEspecifica4");
		String str_producto4 = (String)map_data.get("producto4");
		String str_procedimientosEvaluar4 = (String)map_data.get("procedimientoEvaluar4");
		String str_ejecucionAceptable4 = (String)map_data.get("ejecucionAceptable4");
		String str_tiempoMinimo4 = ((Integer)map_data.get("tiempoMinimo4")).toString();
		String str_grupo4 = ((Integer)map_data.get("grupo4")).toString();
		String str_numeroCarta4 = (String)map_data.get("numeroCarta4");
		
		String str_objetivosAlumno5 = (String)map_data.get("objetivoAlumno5");
		String str_tipo5 = (String)map_data.get("tipo5");
		if( str_tipo5 == null )str_tipo5 = "";
		String str_experienciaAprendizaje5 = (String)map_data.get("experienciaAprendizaje5");
		String str_material5 = (String)map_data.get("material5");
		String str_nivelConocimiento5 = (String)map_data.get("nivelConocimiento5");
		String str_ejecucionEspecifica5 = (String)map_data.get("ejecucionEspecifica5");
		String str_producto5 = (String)map_data.get("producto5");
		String str_procedimientosEvaluar5 = (String)map_data.get("procedimientoEvaluar5");
		String str_ejecucionAceptable5 = (String)map_data.get("ejecucionAceptable5");
		String str_tiempoMinimo5 = ((Integer)map_data.get("tiempoMinimo5")).toString();
		String str_grupo5 = ((Integer)map_data.get("grupo5")).toString();
		String str_numeroCarta5 = (String)map_data.get("numeroCarta5");
		
		String str_edit =
			 " UPDATE PLASTER "+
	            " SET    NUMERO = "+int_subtopicNumber+", "+
	            "        DESCRIPCION =  '"+str_descripcion+"', "+	         
	            "        OBJETIVO =  '"+str_objetivos+"', "+
	            "        OBJ_ALUMNO =  '"+str_objetivosAlumno+"', "+
	            "        TIPO =  '"+str_tipo+"', "+
	            "        EXP_APRENDIZAJE =  '"+str_experienciaAprendizaje+"', "+
	            "        MATERIAL =  '"+str_material+"', "+
	            "        NIV_CONOCIMIENTO =  '"+str_nivelConocimiento+"', "+
	            "        EJEC_ESPECIFICA =  '"+str_ejecucionEspecifica+"', "+
	            "        PRODUCTO =  '"+str_producto+"', "+
	            "        PROC_EVALUAR =  '"+str_procedimientosEvaluar+"', "+
	            "        EJEC_ACEPTABLE =  '"+str_ejecucionAceptable+"', "+
	            "        TIEMPO_MIN =  '"+str_tiempoMinimo+"', "+
	            "        GRUPO =  '"+str_grupo+"', "+
	            "        NUMERO_CARTA =  '"+str_numeroCarta+"', "+
	            "        OBJ_ALUMNO2 =  '"+str_objetivosAlumno2+"', "+
	            "        TIPO2 =  '"+str_tipo2+"', "+
	            "        EXP_APRENDIZAJE2 =  '"+str_experienciaAprendizaje2+"', "+
	            "        MATERIAL2 =  '"+str_material2+"', "+
	            "        NIV_CONOCIMIENTO2 =  '"+str_nivelConocimiento2+"', "+
	            "        EJEC_ESPECIFICA2 =  '"+str_ejecucionEspecifica2+"', "+
	            "        PRODUCTO2 =  '"+str_producto2+"', "+
	            "        PROC_EVALUAR2 =  '"+str_procedimientosEvaluar2+"', "+
	            "        EJEC_ACEPTABLE2 =  '"+str_ejecucionAceptable2+"', "+
	            "        TIEMPO_MIN2 =  '"+str_tiempoMinimo2+"', "+
	            "        GRUPO2 =  '"+str_grupo2+"', "+
	            "        NUMERO_CARTA2 =  '"+str_numeroCarta2+"', "+
	            "        OBJ_ALUMNO3 =  '"+str_objetivosAlumno3+"', "+
	            "        TIPO3 =  '"+str_tipo3+"', "+
	            "        EXP_APRENDIZAJE3 =  '"+str_experienciaAprendizaje3+"', "+
	            "        MATERIAL3 =  '"+str_material3+"', "+
	            "        NIV_CONOCIMIENTO3 =  '"+str_nivelConocimiento3+"', "+
	            "        EJEC_ESPECIFICA3 =  '"+str_ejecucionEspecifica3+"', "+
	            "        PRODUCTO3 =  '"+str_producto3+"', "+
	            "        PROC_EVALUAR3 =  '"+str_procedimientosEvaluar3+"', "+
	            "        EJEC_ACEPTABLE3 =  '"+str_ejecucionAceptable3+"', "+
	            "        TIEMPO_MIN3 =  '"+str_tiempoMinimo3+"', "+
	            "        GRUPO3 =  '"+str_grupo3+"', "+
	            "        NUMERO_CARTA3 =  '"+str_numeroCarta3+"', "+
	            "        OBJ_ALUMNO4 =  '"+str_objetivosAlumno4+"', "+
	            "        TIPO4 =  '"+str_tipo4+"', "+
	            "        EXP_APRENDIZAJE4 =  '"+str_experienciaAprendizaje4+"', "+
	            "        MATERIAL4 =  '"+str_material4+"', "+
	            "        NIV_CONOCIMIENTO4 =  '"+str_nivelConocimiento4+"', "+
	            "        EJEC_ESPECIFICA4 =  '"+str_ejecucionEspecifica4+"', "+
	            "        PRODUCTO4 =  '"+str_producto4+"', "+
	            "        PROC_EVALUAR4 =  '"+str_procedimientosEvaluar4+"', "+
	            "        EJEC_ACEPTABLE4 =  '"+str_ejecucionAceptable4+"', "+
	            "        TIEMPO_MIN4 =  '"+str_tiempoMinimo4+"', "+
	            "        GRUPO4 =  '"+str_grupo4+"', "+
	            "        NUMERO_CARTA4 =  '"+str_numeroCarta4+"', "+
	            "        OBJ_ALUMNO5 =  '"+str_objetivosAlumno5+"', "+
	            "        TIPO5 =  '"+str_tipo5+"', "+
	            "        EXP_APRENDIZAJE5 =  '"+str_experienciaAprendizaje5+"', "+
	            "        MATERIAL5 =  '"+str_material5+"', "+
	            "        NIV_CONOCIMIENTO5 =  '"+str_nivelConocimiento5+"', "+
	            "        EJEC_ESPECIFICA5 =  '"+str_ejecucionEspecifica5+"', "+
	            "        PRODUCTO5 =  '"+str_producto5+"', "+
	            "        PROC_EVALUAR5 =  '"+str_procedimientosEvaluar5+"', "+
	            "        EJEC_ACEPTABLE5 =  '"+str_ejecucionAceptable5+"', "+
	            "        TIEMPO_MIN5 =  '"+str_tiempoMinimo5+"', "+
	            "        GRUPO5 =  '"+str_grupo5+"', "+
	            "        NUMERO_CARTA5 =  '"+str_numeroCarta5+"' "+
	            " where  STE_TECH_KEY = "+int_subtopicId;
		DBManagement database = new DBManagement();
        boolean bol_insertStatus = database.executeQuery( str_edit );
        int_edit = bol_insertStatus ? 1 : 0;
        database = null;
	    return int_edit;
	}
	
	public static int delete( int int_subtopicId ){
		int int_delete;
		
		String str_delete =
            " delete from PLASTER "+
            " where  STE_TECH_KEY = "+int_subtopicId;
		DBManagement database = new DBManagement();
        boolean bol_insertStatus = database.executeQuery( str_delete );
        int_delete = bol_insertStatus ? 1 : 0;
        database = null;
	    return int_delete;
	}
}
